As a computing way with expansibility and flexibility, cloud computing has obvious advantages over the traditional IT environment. With the vigorous promotion of the cloud computing concept and technology in recent years, more and more enterprises have begun to use a cloud computing system instead of the traditional IT system, wherein a private cloud deployed internally by small and medium-sized enterprises is included. Use of cloud computing can implement allocation of resource scheduling as required and automatic deploy of the environment, reducing artificial running and maintenance cost, decreasing potential errors, improving production efficiency, and realizing energy conservation and emission reduction, thereby building green IT.
A basic usage scenario of cloud computing is that a plurality of physical servers with the same architecture constitute a resource pool, and these physical servers are virtualized, thereby forming more virtual machines. To avoid failure of one or a plurality of physical servers, the resource pool is supplied with HA mechanism, guaranteeing that the service can be recovered automatically after the failure of the physical server(s).
At present, the HA mechanism of the servers in the resource pool is that: if one or a plurality of physical servers in the resource pool fail, the virtual machines running on the failed physical server(s) are restarted on other physical server(s). In order to guarantee that other normally-running physical servers have enough memory to take over all the virtual machines after part of the physical servers fails, and for all the physical servers, part of their memory will be retained not to be allocated.
Memory is an important choke point of the number of virtual machines supported by the physical servers. If the present HA policy is applied, there is serious waste of memory resources of the physical servers. In the case that the quantity of the physical servers in the resource pool is small, the waste problem is more prominent. For instance, when there are only two physical servers in one resource pool, each physical server can only allocate half available memory to the virtual machines in order to configure HA, and then the waste of memory is up to 50%. It can be considered that the existing mechanism guaranteeing the HA of physical servers implements the robustness of service at the expense of the valued memory.